//
// Created by Zhangwj on 2023/9/27.
//

#ifndef COMPILE_TASK2_EQEXPNODE_H
#define COMPILE_TASK2_EQEXPNODE_H


#include "SyntaxTreeNode.h"
#include "../Parser.h"
#include "RelExpNode.h"

class EqExpNode : public SyntaxTreeNode{
public:
    //EqExp → RelExp | EqExp ('==' | '!=') RelExp
    //改写为 EqExp -> RelExp { ('==' | '!=') RelExp}
    std::vector<std::unique_ptr<RelExpNode>> RelExps;
    std::vector<LexType> Ops;

    static std::unique_ptr<EqExpNode> EqExpParser(Parser& parser);
};


#endif //COMPILE_TASK2_EQEXPNODE_H
